iT邦幫忙

5

FreeBSD ZFS + HBA 卡的注意事項

zfs
  • 分享至 

  • xImage
  •  

FreeBSD ZFS + HBA 狂噴 SYNCHRONIZE CACHE 錯誤訊息
好不容易 FreeBSD 9.0 上 ZFS 的 filesystem 版本升級到 5, storage pool 的版本升級到 28, 總算有個較完整的功能可用, 興沖沖的就給他上去.

剛上去時, 系統一直狂噴
Feb 23 12:21:59 mx kernel: (da2:isp0:0:0:0): SYNCHRONIZE CACHE(10). CDB: 35 0 0 0 0 0 0 0 0 0
Feb 23 12:21:59 mx kernel: (da2:isp0:0:0:0): CAM status: SCSI Status Error
Feb 23 12:21:59 mx kernel: (da2:isp0:0:0:0): SCSI status: Check Condition
Feb 23 12:21:59 mx kernel: (da2:isp0:0:0:0): SCSI sense: ILLEGAL REQUEST asc:20,0 (Invalid command operation code)
Feb 23 12:21:59 mx kernel: (da2:isp0:0:0:0): Command byte 0 bit 0 is invalid
整個效能變笑能.....哭
本以為是 driver 和 HBA 卡不相容或 FreeBSD 版本問題, 不信邪先把硬碟格式化成 UFS 反倒不會噴這個訊息出來, 這下確認了是 ZFS 在搞鬼.

因為 ZFS 在完成同步寫入時, 會強制在 HBA 上執行 NVRAM 的清除作業, 這會影響效能!!

為避免此問題必須要在 /boot/loader.conf 內加入
vfs.zfs.cache_flush_disable=1
以阻止 ZFS 對 HBA 上的 NVRAM 執行 SYNCHRONIZE CACHE 指令.


圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言